Hvac controller user interfaces

ABSTRACT

Controllers for controlling heating, ventilating, air conditioning, and cooling (HVAC) systems are provided. The controllers include graphical user interfaces for user adjustment of system settings. In certain embodiments, the graphical user interfaces may include slide bars for adjusting temperature set points. In certain embodiments, the graphical user interfaces may include selectable calendars for adjusting program schedules for the HVAC systems. In certain embodiments, the graphical user interfaces may include screens for adjusting a nightlight feature of the controller.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority from and the benefit of U.S. Provisional Application Ser. No. 61/097,133, entitled “CONTROLLER AND ASSOCIATED USER INTERFACE FOR CLIMATE CONDITIONING SYSTEM”, filed Sep. 15, 2008, which is hereby incorporated by reference.

BACKGROUND

The invention relates generally to heating, ventilating, air conditioning, and refrigeration systems, and controllers for configuring these systems.

A wide range of applications exist for heating, ventilating, and air conditioning (HVAC) systems. For example, residential, light commercial, commercial, and industrial systems are used to control temperatures and air quality in residences and buildings. Such systems often are dedicated to either heating or cooling, although systems are common that perform both of these functions. Very generally, these systems operate by implementing a thermal cycle in which fluids are heated and cooled to provide the desired temperature in a controlled space, typically the inside of a residence or building. Similar systems are used for vehicle heating and cooling, and as well as for general refrigeration.

Residential systems generally include an indoor unit, such as an air handler or a furnace, and an outdoor unit, such as a heat pump or an air conditioner. A system controller, such as a thermostat, may be connected to control circuits within the indoor and outdoor units to control operation of the HVAC system. A user may adjust operating parameters of the HVAC system, such as the temperature of a heated or cooled space, through a user interface. However, in certain applications, the user interface may not allow for adjustment of more complex parameters. Further, a user may not understand how to adjust all but the simplest system parameters or how the components of the HVAC system function together.

SUMMARY

The present invention relates to a control device that includes a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system and a display capable of displaying a graphical element defining a range of temperature set points for the heating, ventilating, air conditioning, or cooling system, and a moveable feature disposed on the graphical element. The control device also includes a graphical user interface capable of receiving a user input that moves the moveable feature on the graphical element to select a temperature set point from the range of temperature set points and a processor capable of operating the heating, ventilating, air conditioning, or cooling system based on the selected temperature set point.

The present invention also relates to a control device that includes a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system. The control device also includes a display capable of displaying a slide bar defining a range of temperature set points for the heating, ventilating, air conditioning, or cooling system, a first moveable feature disposed on the slide bar for selecting a cooling mode temperature set point, and a second moveable feature disposed on the slide bar for selecting a heating mode temperature set point. The control device further includes a graphical user interface capable of receiving a first user input that moves the first moveable feature on the slide bar to select the cooling mode temperature set point and a second user input that moves the second moveable feature on the slide bar to select the heating mode temperature set point. The control device further includes a processor capable of applying the selected heating mode temperature set point and the selected cooling mode temperature set point to the heating, ventilating, air conditioning, or cooling system.

The present invention further relates to a control device that includes a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system, and a display capable of displaying a calendar with graphical elements for assigning an operating schedule to a period shown on the calendar. The control device also includes a graphical user interface capable of receiving a user input that selects one or more of the graphical elements to assign the operating schedule to the period shown on the calendar, and a processor capable of operating the heating, ventilating, air conditioning or cooling system in accordance with the operating schedule during the assigned period.

The present invention further relates to a control device that includes a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system, and a display with a backlight and capable of displaying user selectable graphical elements for assigning a schedule that adjusts an intensity of the backlight for a set period. The control device also includes a graphical user interface capable of receiving a user input that selects the set period via the selectable graphical elements, and a processor capable of operating the backlight at the adjusted intensity for the set period and capable of operating the heating, ventilating, air conditioning, or cooling system through the communication interface.

The present invention further relates to a method that includes receiving an adjusted set point for a heating, ventilating, air conditioning, or cooling system, determining whether the adjusted set point exceeds an over adjustment threshold, and operating the heating, ventilating, air conditioning, or cooling system based on the adjusted set point in response to determining that the adjusted set point does not exceed the over adjustment threshold.

The present invention further relates to a control device including a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system, a graphical user interface comprising user selectable graphical elements for producing a virtual representation of a physical environment conditioned by the heating, ventilating, air conditioning, or cooling system, and a display capable of displaying the virtual representation.

The present invention further relates to a control device including a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system, a graphical user interface comprising a user selectable graphical element for enabling a rapid heating and/or rapid cooling mode, and a processor capable of overriding a current temperature setting to operate the heating, ventilating, air conditioning, or cooling system at a maximum capacity in response to selection of the user selectable graphical element.

DRAWINGS

FIG. 1 is a perspective view of an embodiment of a commercial or industrial HVAC system that employs system controllers with user interfaces.

FIG. 2 is a perspective view of an embodiment of a residential HVAC system that employs system controllers with user interfaces.

FIG. 3 is a perspective view of an embodiment of a system controller for an HVAC system.

FIG. 4 is a block diagram of an embodiment of an HVAC system that employs a system controller.

FIG. 5 is a block diagram of an embodiment of a system controller.

FIG. 6 is a view of a screen of the controller of FIG. 5.

FIG. 7 a view of a menu screen of the controller of FIG. 5.

FIG. 8 is a view of a screen of the controller of FIG. 5 for adjusting schedules.

FIG. 9 is a view of another screen of the controller of FIG. 5 for adjusting schedules.

FIG. 10 is a view of another screen of the controller of FIG. 5 for adjusting schedules.

FIG. 11 is a view of a screen of the controller of FIG. 5 for adjusting schedule events.

FIG. 12 is a view of another screen of the controller of FIG. 5 for adjusting schedule events.

FIG. 13 is a view of a screen of the controller of FIG. 5 for adjusting temperature set points.

FIG. 14 is a view of another screen of the controller of FIG. 5 for adjusting schedules.

FIG. 15 is a view of a screen of the controller of FIG. 5 for adjusting humidity set points.

FIG. 16 is a view of a screen of the controller of FIG. 5 for viewing schedules.

FIG. 17 is a view of a screen of the controller of FIG. 5 for assigning schedules to periods.

FIG. 18 is a view of a screen of the controller of FIG. 5 for assigning schedules to zones.

FIG. 19 is a view of a home screen of the controller of FIG. 5.

FIG. 20 is a view of a screen of the controller of FIG. 5 for adjusting schedules.

FIG. 21 is a view of a calendar screen of the controller of FIG. 5 for adjusting schedules.

FIG. 22 is a view of another calendar screen of the controller of FIG. 5.

FIG. 23 is a view of a settings menu screen of the controller of FIG. 5.

FIG. 24 is a view of a screen of the controller of FIG. 5 for adjusting a nightlight feature.

FIG. 25 is a view of a screen of the controller of FIG. 5 for adjusting temperature set points.

FIG. 26 is a view of the screen of FIG. 25 after adjustment of temperature set points.

FIG. 27 is another view of the screen of FIG. 25 after adjustment of temperature set points.

FIG. 28 is a view of another embodiment of a screen of the controller of FIG. 5 for adjusting a temperature set point.

FIG. 29 is a flow chart depicting a method for adjusting a temperature set point.

FIG. 30 is a flow chart depicting another method for adjusting a temperature set point.

FIG. 31 is a view of a screen of the controller of FIG. 5 for adjusting a display language.

FIG. 32 is a view of another screen of the controller of FIG. 5 for adjusting a display language.

FIG. 33 is a schematic diagram depicting a method for voice control of the controller of FIG. 5.

FIG. 34 is a schematic diagram depicting a method for external device control of the controller of FIG. 5.

FIG. 35 is a view of a screen of the controller of FIG. 5 depicting an advertisement.

FIG. 36 is a view of a screen of the controller of FIG. 5 for purchasing accessories.

FIG. 37 is a view of a screen of the controller of FIG. 5 for customizing the display.

FIG. 38 is a view of another screen of the controller of FIG. 5 for customizing the display.

FIG. 39 is a view of a screen of the controller of FIG. 5 for entering data.

FIG. 40 is a view of a screen of the controller of FIG. 5 for adjusting the display of screens.

FIG. 41 is a view of the screen of FIG. 40 after adjustment of the screen display.

FIG. 42 is a view of a screen of the controller of FIG. 5 for adjusting zones.

FIG. 43 is a view of another screen of the controller of FIG. 5 for adjusting zones.

FIG. 44 is a perspective view of another embodiment of the controller of FIG. 5, which includes a stylus.

FIG. 45 is a top view of the controller of FIG. 5 mounted within a wall.

FIG. 46 is a perspective view of another embodiment of the controller of FIG. 5 with a removable display.

FIG. 47 is a side view of an embodiment of the controller of FIG. 5 with a faceplate.

FIG. 48 is a front view of the controller of FIG. 47.

FIG. 49 is a top view of another embodiment of the controller of FIG. 5 with a radio frequency transmitter and receiver.

FIG. 50 is a front view of another embodiment the controller of FIG. 5 with a motion sensor.

FIG. 51 is a top view of the controller of FIG. 50.

FIG. 52 is another top view of the controller of FIG. 50.

FIG. 53 is a view of a screen of the controller of FIG. 5 for adjusting a temperature set point.

DETAILED DESCRIPTION

The present disclosure is directed to controllers with graphical user interfaces that facilitate programming of the controller and/or HVAC system. The user interfaces may be intuitive and interactive to facilitate user adjustment of HVAC system settings. In certain embodiments, the user interfaces may include moveable graphical elements for adjusting temperature set points and/or intensity of the backlight. Further, the user interfaces may include an interactive calendar for adjusting operating schedules for the HVAC system. Moreover, the user interfaces may facilitate control of the HVAC system through external devices and/or voice control.

FIG. 1 illustrates an exemplary application, in this case an HVAC system for building environmental management, that may employ one or more system controllers with user interfaces. A building 10 is cooled by a system that includes a chiller 12 and a boiler 14. As shown, chiller 12 is disposed on the roof of building 10 and boiler 14 is located in the basement; however, the chiller and boiler may be located in other equipment rooms or areas next to the building. Chiller 12 is an air cooled or water cooled device that implements a refrigeration cycle to cool water. Chiller 12 may be a stand-alone unit or may be part of a single package unit containing other equipment, such as a blower and/or integrated air handler. Boiler 14 is a closed vessel that includes a furnace to heat water. The water from chiller 12 and boiler 14 is circulated through building 10 by water conduits 16. Water conduits 16 are routed to air handlers 18, located on individual floors and within sections of building 10.

Air handlers 18 are coupled to ductwork 20 that is adapted to distribute air between the air handlers and may receive air from an outside intake (not shown). Air handlers 18 include heat exchangers that circulate cold water from chiller 12 and hot water from boiler 14 to provide heated or cooled air. Fans, within air handlers 18, draw air through the heat exchangers and direct the conditioned air to environments within building 10, such as rooms, apartments, or offices, to maintain the environments at a designated temperature. A controller 22, shown here as including a thermostat, may be used to designate the temperature of the conditioned air. Controller 22 also may be used to control the flow of air through and from air handlers 18 and to diagnose mechanical or electrical problems with the air handlers 18. Other devices may, of course, be included in the system, such as control valves that regulate the flow of water and pressure and/or temperature transducers or switches that sense the temperatures and pressures of the water, the air, and so forth. Moreover, the control device may communicate with computer systems that are integrated with or separate from other building control or monitoring systems, and even systems that are remote from the building.

FIG. 2 illustrates a residential heating and cooling system. The residential heating and cooling system may provide heated and cooled air to a residential structure, as well as provide outside air for ventilation and provide improved indoor air quality (IAQ) through devices such as ultraviolet lights and air filters. In general, a residence 24 may include refrigerant conduits 26 that operatively couple an indoor unit 28 to an outdoor unit 30. Indoor unit 28 may be positioned in a utility room, an attic, a basement, and so forth. Outdoor unit 30 is typically situated adjacent to a side of residence 24 and is covered by a shroud to protect the system components and to prevent leaves and other contaminants from entering the unit. Refrigerant conduits 26 transfer refrigerant between indoor unit 28 and outdoor unit 30, typically transferring primarily liquid refrigerant in one direction and primarily vaporized refrigerant in an opposite direction.

When the system shown in FIG. 2 is operating as an air conditioner, a heat exchanger 32 in outdoor unit 30 serves as a condenser for re-condensing vaporized refrigerant flowing from indoor unit 28 to outdoor unit 30 via one of the refrigerant conduits 26. In these applications, a heat exchanger 34 of the indoor unit functions as an evaporator. Specifically, heat exchanger 34 receives liquid refrigerant (which may be expanded by an expansion device, not shown) and evaporates the refrigerant before returning it to outdoor unit 30.

Outdoor unit 30 draws environmental air through heat exchanger 32 using a fan 36 and expels the air above the outdoor unit. When operating as an air conditioner, the air is heated by heat exchanger 32 within outdoor unit 30 and exits the unit at a temperature higher than it entered. Indoor unit 28 includes a blower or fan 38 that directs air through indoor heat exchanger 34, where the air is cooled when the system is operating in air conditioning mode, and then circulates the air through ductwork 40 that directs the air to the residence 24. The overall system operates to maintain a desired temperature as set by a system controller 22 (FIG. 1). When the temperature sensed inside the residence is higher than the set point on the thermostat (plus a small amount), the air conditioner may become operative to refrigerate additional air for circulation through the residence. When the temperature reaches the set point (minus a small amount), the unit may stop the refrigeration cycle temporarily.

When the unit in FIG. 2 operates as a heat pump, the roles of heat exchangers 32 and 34 are reversed. That is, heat exchanger 32 of outdoor unit 30 will serve as an evaporator to evaporate refrigerant and thereby cool air entering outdoor unit 30 as the air passes over outdoor heat exchanger 32. Indoor heat exchanger 34 will receive a stream of air blown over it and will heat the air by condensing the refrigerant.

FIG. 3 is a front view of controller 22, shown here as including a digital programmable thermostat. In other embodiments, the controller may be any suitable temperature controller. The controller 22 may be used to control one or more indoor and/or outdoor units. Controller 22 is protected by an enclosure 42 that protects the interior components from physical damage and shields them from environmental hazards such as dust and electromagnetic interference. The enclosure may be formed from any suitable material such as plastic, metal, or a composite material. A display 44 is mounted within enclosure 42 and may be used to display various images and text generated by the device. The display may be any type of display such as a liquid crystal display, a light emitting diode display, an organic light emitting diode display, or other suitable display and may be capable of displaying text strings and/or high-resolution color graphics. Additionally, the display includes a touch-sensitive element, such as a touch screen 45.

Touch screen 45 may receive input from a user's or object's touch and may send the information to a processor within the controller 22, which may interpret the touch event and perform a corresponding action. According to certain embodiments, the touch screen may employ resistive touch screen technology. However, in other embodiments, the touch screen may employ any suitable type of touch screen technology, such as capacitive, infrared, surface acoustic wave, electromagnetic, or near field imaging. Furthermore, touch screen 45 may employ single point or multipoint sensing.

Display 44 may be used to display a graphical user interface (GUI) 46 that allows a user to interact with the controller. GUI 46 may include various layers, windows, screens, templates, elements, or other components that may be displayed in all, or a portion, of display 44. Generally, GUI 46 may include textual and graphical elements that represent applications and functions of controller 22. For example, user GUI 46 may include status indicators 48 that display the status of the system and/or the environment. For example, an indicator 48B may display the operational mode (i.e., heating or cooling) and the temperature set point, an indicator 48C may display the current temperature and humidity, and an indicator 48D may display the weather conditions, among others. In another example, indicators 40E and 40F may display the humidity control status and the fan speed, respectively. In certain embodiments, the status indicators 48 also may include one or more brand indicators 48A that display information identifying the brand of controller 22.

GUI 46 also may include graphical elements 50 that may represent icons, buttons, sliders, menu bars, and the like. Graphical elements 50 may be selected by a user through the touch screen. For example, graphical elements 50A may be selected to increase or decrease the temperature set point. In another example, graphical elements 50B and 50C may be selected to change the system mode between heating and cooling. A graphical element 50D also may be selected by a user to display screens with menus and/or submenus for adjusting system settings and/or operation parameters of the HVAC system. Further, a graphical element 50E may notify a user that maintenance is required and may be selected to obtain maintenance information. As may be appreciated, the types and functionality of the graphical elements may vary depending on system functionality, system settings, and system equipment, among others. Further, in certain embodiments, controller 22 may include physical inputs, such as buttons, wheels, knobs, or the like, for receiving user input instead of, in addition to, or in combination with graphical elements 50.

FIG. 4 is a block diagram of an HVAC system 52 that includes controller 22, indoor unit 28 functioning as an air handler, and outdoor unit 30 functioning as a heat pump. Refrigerant flows through system 52 within a closed refrigeration loop 54 between outdoor unit 30 and indoor unit 28. The refrigerant may be any fluid that absorbs and extracts heat. For example, the refrigerant may be hydrofluorocarbon (HFC) based R-410A, R-407C, or R-134a. HVAC system 52 also includes an auxiliary heat system 56 that may be used to provide additional heating. For example, auxiliary heat system 56 may include a gas furnace, a fossil fuel furnace, an electric heat system, or the like.

The operation of indoor and outdoor units 28 and 30 is controlled by control circuits 58 and 60, respectively. Further, the operation of auxiliary heat system 56 is controlled by a control circuit 62. Control circuits 58, 60, and 62 may execute hardware or software control algorithms to govern operations of HVAC system 52. According to certain embodiments, the control circuits may include one or more microprocessors, analog to digital converters, non-volatile memories, and interface boards. In certain embodiments, the control circuits may be fitted with or coupled to auxiliary control boards that allow conventional 24 VAC wiring to be controlled through serial communications. Further, in certain embodiments, the control circuits may be controlled through a wireless network.

Control circuits 58, 60, and 62 may receive control signals from controller 22 and transmit the signals to equipment located within indoor unit 28, outdoor unit 30, and auxiliary heat system 54. For example, outdoor control circuit 60 may route control signals to a motor 64 that powers fan 66 and to a motor 68 that powers a compressor 70. Indoor control circuit 58 may route control signals to a motor 72 that powers fan 38. Indoor control circuit 58 also may route control circuits to equipment included within an Indoor Air Quality (IAQ) system 74. For example, IAQ system 74 may include one or more air cleaners, UV air purifiers, humidifiers, and/or ventilators, among others. The control circuits also may transmit control signals to other types of equipment such as valves 76 and 78, sensors, and switches.

Controller 22 may operate to control the overall heating and cooling provided by indoor unit 28, outdoor unit 30, and auxiliary heat system 54. Indoor and outdoor units 28 and 30 include heat exchangers 34 and 32 that function either as an evaporator or a condenser depending on the heat pump operation mode. For example, when HVAC system 52 is operating in cooling (or “AC”) mode, outside heat exchanger 32 functions as a condenser, releasing heat to the outside air, while inside heat exchanger 34 functions as an evaporator, absorbing heat from the inside air. When HVAC system 52 is operating in heating mode, outside heat exchanger 32 functions as an evaporator, absorbing heat from the outside air, while inside heat exchanger 34 functions as a condenser, releasing heat to the inside air. A reversing valve (not shown) may be positioned on closed loop 54 to control the direction of refrigerant flow and thereby to switch the heat pump between heating mode and cooling mode.

HVAC system 52 also includes two metering devices 76 and 78 for decreasing the pressure and temperature of the refrigerant before it enters the evaporator. The metering devices also regulate the refrigerant flow entering the evaporator so that the amount of refrigerant entering the evaporator equals, or approximately equals, the amount of refrigerant exiting the evaporator. The metering device used depends on the heat pump operation mode. For example, when HVAC system 52 is operating in cooling mode, refrigerant bypasses metering device 76 and flows through metering device 78 before entering inside heat exchanger 34, which acts as an evaporator. In another example, when HVAC system 52 is operating in heating mode, refrigerant bypasses metering device 78 and flows through metering device 76 before entering outside heat exchanger 32, which acts as an evaporator. According to other exemplary embodiments, a single metering device may be used for both heating mode and cooling mode.

The refrigerant enters the evaporator, which is outside heat exchanger 32 in heating mode and inside heat exchanger 34 in cooling mode, as a low temperature and pressure liquid. Some vapor refrigerant also may be present as a result of the expansion process that occurs in metering device 76 and 78. The refrigerant flows through tubes in the evaporator and absorbs heat from the air changing the refrigerant into a vapor. In cooling mode, the indoor air flowing across the multichannel tubes also may be dehumidified. The moisture from the air may condense on the outer surface of the multichannel tubes and consequently be removed from the air.

After exiting the evaporator, the refrigerant flows into compressor 70. Compressor 70 decreases the volume of the refrigerant vapor, thereby, increasing the temperature and pressure of the vapor. The compressor may be any suitable compressor such as a screw compressor, reciprocating compressor, rotary compressor, swing link compressor, scroll compressor, or turbine compressor.

From compressor 70, the increased temperature and pressure vapor refrigerant flows into a condenser, the location of which is determined by the heat pump mode. In cooling mode, the refrigerant flows into outside heat exchanger 32 (acting as a condenser). Fan 36, which is powered by motor 64, draws air across the tubes containing refrigerant vapor. According to certain exemplary embodiments, the fan may be replaced by a pump that draws fluid across the multichannel tubes. The heat from the refrigerant is transferred to the outside air causing the refrigerant to condense into a liquid. In heating mode, the refrigerant flows into inside heat exchanger 34 (acting as a condenser). Fan 38, which is powered by motor 72, draws air across the tubes containing refrigerant vapor. The heat from the refrigerant is transferred to the inside air causing the refrigerant to condense into a liquid.

After exiting the condenser, the refrigerant flows through the metering device (76 in heating mode and 78 in cooling mode) and returns to the evaporator (outside heat exchanger 32 in heating mode and inside heat exchanger 34 in cooling mode) where the process begins again.

In both heating and cooling modes, motor 68 drives compressor 70 and circulates refrigerant through reversible refrigeration/heating loop 54. The motor may receive power either directly from an AC or DC power source or from a variable speed drive (VSD). The motor may be a switched reluctance (SR) motor, an induction motor, an electronically commutated permanent magnet motor (ECM), or any other suitable motor type.

The operation of motor 68 is controlled by control circuit 60. Control circuit 46 may receive control signals from controller 22. In certain embodiments, controller 22 may receive information from a sensor 76 that measures the ambient indoor air temperature and a sensor 78 that measures indoor humidity. Controller 22 then compares the air temperature to the temperature set point (which may be input by a user) and engages compressor motor 68 and fan motors 64 and 72 to run the cooling system if the air temperature is above the temperature set point. In heating mode, controller 22 compares the air temperature from sensor 76 to the temperature set point and engages motors 64, 68, and 72 to run the heating system if the air temperature is below the temperature set point. According to certain embodiments, sensors 76 and 78 may be located within and/or may be an integral part of controller 22. However, in other embodiments, sensors 76 and 78 may be external devices connected to controller 22, for example, through a wired or wireless connection.

Control circuit 60 and controller 22 also may initiate a defrost cycle when the system is operating in heating mode. When the outdoor temperature approaches freezing, moisture in the outside air that is directed over outside heat exchanger 32 may condense and freeze on the coil. Controller 22 may receive information from one or more sensors 80 that measure the outside air temperature and, in certain embodiments, the temperature of outside heat exchanger 32. These sensors provide temperature information to the control circuit 60 which determines when to initiate a defrost cycle.

Controller 22 also may use temperature information from outdoor temperature sensor 80 to determine when to enable the auxiliary heating system 54. For example, if controller 22 receives a signal from temperature sensor 80 indicating that the outdoor temperature has dropped below a certain set point, controller 22 may disable operation of indoor unit 28 and outdoor unit 30 and enable auxiliary heating system 54. In certain embodiments, HVAC system 52 also may include a sensor 81 that senses the level of fuel within a fuel source for auxiliary heating system 54. For example, auxiliary heating system 54 may be a furnace that uses fuel from a propane tank. In this example, sensor 81 may measure the level of fuel within the propane tank and may provide this information to controller 22. Controller 22 may then determine when to operate auxiliary heating system 54, based at least in part on the fuel information provided by sensor 81. For example, if the fuel level is low, controller 22 may operate indoor and outdoor units 28 and 30 for heating, rather than operating auxiliary heating system 54. Further, in certain embodiments, depending on the outdoor temperature, among other factors, controller 22 may operate the auxiliary heating system 54 in conjunction with indoor unit 28 and outdoor unit 30.

FIG. 5 is a simplified block diagram illustrating various components and features of controller 22 in accordance with one embodiment. The block diagram includes display 36 discussed above with respect to FIG. 3, as well as many other components. As noted above with respect to FIG. 4, the controller 22 may be used to control operation of an HVAC system with one or more indoor and outdoor units, such as indoor unit 28, outdoor unit 30, and auxiliary heating system 54. In certain embodiments, each of the units may include a control circuit communicatively coupled to the controller. However, in other embodiments, only some of the units may include control circuits, and the units without control circuits may be wired to and controlled by control circuits within the other units and/or by the controller. Further, the controller may be employed to control a system with only one unit. For example, an HVAC system may provide only heating using an indoor unit such as a furnace. No outdoor unit may be included and no refrigerant may be involved.

The operation of controller 22 may be controlled by a processor 82 that provides the processing capability for the controller. In certain embodiments, the processor 82 may include one or more microprocessors, instruction set processors, graphics processors, and/or related chip sets. Processor 82 may cooperate with a memory 84 that stores executable and/or machine-readable code, data, and instructions for processor 82. For example, the memory 84 may store look up tables and/or algorithms for GUI 46 (FIG. 3). Memory 84 also may store protocol information and instructions for allowing communication between controller 22 and connected units. The memory may include volatile memory such as random access memory and/or non-volatile memory such as read only memory, flash memory, a hard drive, or any other suitable optical, magnetic, or solid-state computer readable media, as well as a combination thereof.

Memory 72 also may store components of GUI 46 (FIG. 3), such as graphical elements, screens, and templates, that may be shown on display 44. A controller 86 may provide the infrastructure for exchanging data between processor 82 and display 44. According to certain embodiments, controller 86 may be an integrated circuit. Further, controller 86 may exist as a separate component or be integrated into display 44 or processor 82. According to exemplary embodiments, controller 86 may govern operation of display 44 and may process graphics and text for display on display 44. Further, controller 86 may process touch events received through the touch screen of display 44.

Display 44 may display screens of GUI 48 prompting a user to enter a user input 88 through touch screen 45. User input 88 may include a value specifying properties of the HVAC system. For example, a screen may prompt a user to select one of the graphical elements 50 to adjust a temperature set point or to determine the heating or cooling mode. In another example, display 44 may display setup screens prompting a user to input a schedule for the HVAC system.

User input 88 also may be received through an input/output (I/O) port 90. The I/O port may be a serial port, USB port, media card port, IEEE-1394 port, network interface, or other suitable interface configured to receive input from an external device. For example, the I/O port may be a USB port for connecting to a USB drive or flash drive. In certain embodiments, the I/O port may be a wireless interface for connecting to a computer, cell phone, or personal navigation device over a wireless network, such as an IEEE 802.11x wireless network. Moreover, in certain embodiments, screens of GUI 46 may be transmitted through I/O port 90 to an external device, such as a cell phone or computer, to facilitate control of controller 22 through the external device.

A communication interface 92 may transmit information received through I/O port 90 to processor 82. In certain embodiments, communication interface 92 may process data prior to transmitting the data to processor 82. Communication interface 92 also may provide an infrastructure for communicating information from I/O port 90 and processor 82 to the indoor and outdoor units 28, 30, 54, 74 (FIG. 4) within the HVAC system. In certain embodiments, the communication interface may be a serial communication interface including one or more protocols for transmitting and/or receiving communication packets containing control signals. For example, the communication interface may employ one or more protocols such as Modbus, BACnet, DNET, or PROFIBUS (Process Field Bus). In certain embodiments, the communication interface may include a Controller Area Network (CAN) chip for communicating with the indoor and outdoor units, with the auxiliary heating system, and/or with external devices. According to exemplary embodiments, communication interface 92 may employ packet switching to route communication packets to the indoor and outdoor units and to the auxiliary heating system. Further, in certain embodiments, communication interface 92 may communicate with external servers, devices, and/or systems. For example, communication interface 92 may connect through a network to a weather information provider to obtain weather forecast and/or real time information.

FIG. 6 depicts a screen 94 of GUI 46 for displaying operating information for HVAC system 52. According to certain embodiments, controller 22 may display screen 94 as a default screen when controller 22 is in standby mode. A user may touch a portion of screen 94 to display the main screen as shown in FIG. 3. Screen 94 may show images 96, such as a picture of a residence with an indicator 98 displaying the current interior temperature. Images 96 may be shown on a background 97, which in, certain embodiments, may include a brand identifier, such as a watermark 102. Watermark 102 may be used to display graphical images that reflect the brand of the equipment installed in HVAC system 52. For example, a brand identifier may be entered by an installer through GUI 46. In another example, controller 22 may receive a signal through communication interface 92 (FIG. 5) that specifies the brand identifier. In certain embodiments, controller 22 may retrieve brand identifier information by reading a variable stored in the memory associated with one of the units 28, 30, and 54 (FIG. 4). Controller 22 may then retrieve a watermark 102 corresponding to the brand identifier, for example, using lookup tables stored in memory 84 (FIG. 5). Screen 94 may also include an indicator 100 that displays the outdoor temperature.

According to certain embodiments, images 96 also may include customized images, such as screen savers, backgrounds, wallpaper, or photos that may be stored within memory 84 (FIG. 5) of controller 22. For example, a homeowner may upload a photo slideshow to be displayed as images 96 on controller 22. Further, the images maybe be may be transferred into memory 84 through communication interface 92 (FIG. 5) or through I/O port 90, for example, through a media device, such as a jump drive, memory card, or the like.

The controller 22 may display screens facilitating user customization of backgrounds 97 and images 96. For example, a user may select a color for background 97 that is similar to the color of the wall controller 22 is mounted on to allow controller 22 to blend in with the wall. In another example, a user may select display options, such as a color palette, display theme, or font size and style, among others. Further, in certain embodiments, controller 22 may alter the display of background 97 and/or images 96 based at least in part on the operational mode of controller 22. For instance, if HVAC system 52 is operating in a heating mode, the color palette may change to warm reddish tones. Similarly, if HVAC system 52 is operating in a cooling mode, the background and/or images 96 may include a color scheme in cool blue tones. In certain embodiments, the color scheme may be used to inform the user of the current operational mode of HVAC system 52. Further, some psychological benefits also may be gained where the user may perceive that the temperature is actually warmer or cooler when they observe the display of reddish or bluish tones. In certain embodiments, this may result in reduced energy costs. Controller 22 may also display various themes associated with background 97 and images 96. For example, themes may include seasonal themes, such as fall, spring, summer, winter, or holiday related themes, that may be selected by a user to correspond to different times of the year. For example, during the holidays, a user may wish to display a holiday theme to fit in with home decorations.

FIG. 7 depicts a menu screen 104 of GUI 46 for viewing, changing, or initially entering settings of HVAC system 52. In certain embodiments, screen 104 may be displayed by selecting graphical element 50D from the home screen shown in FIG. 3. Screen 104 includes graphical elements 106, 108, 110, 112, 114, 116, 118, 120, and 122 that may be selected by a user through touch screen 45 to display various screens and submenus of GUI 46 for adjusting settings and/or operating parameters. For example, a user may select graphical element 122 to view submenus for adjusting operating schedules for HVAC system 52. In another example, a user may select one of the graphical elements 108, 110, 112, 114, 116, 118, and 120 to display a menu for adjusting fan settings, humidity settings, general settings, dealer information, or system utilities. A user may select graphical element 120 to view a screen that may facilitate cleaning of display 44. Further a user may select one of graphical elements 106 to view other screens of GUI 48, such as a help screen and a password or PIN screen.

A graphical element 126 may be selected to adjust settings for zones within HVAC system 52. For example, HVAC system 52 may include electrically controlled dampers that are independently controlled by controller 22 to adjust the airflow to different areas, or zones, within the building. The zones may allow HVAC system 52 to maintain different environmental conditions, such as temperature, humidity, or airflow, within different areas of the building. In certain embodiments, each zone may have a slave controller that communicates with controller 22. Further, in other embodiments, each zone may be controlled by controller 22 with each zone having separate temperature and/or humidity sensors. Further, a graphical element 124 may be selected to enable emergency heating. For example, graphical element 124 may be selected to override current system settings and provide emergency heat using auxiliary heating system 54. Menu screen 104 also includes a graphical element 107 that may be selected to close the menu screen and return to the home screen shown in FIG. 3.

FIG. 8 depicts a screen 128 that may be used to create or edit operating schedules for HVAC system 52. For example, screen 128 may be displayed in response selection of graphical element 122 (FIG. 7). Screen 128 includes a window 132 that may display schedules available for editing. Graphical elements 134 and 136 may be selected to scroll through and select the schedules shown within window 132. After a schedule has been selected, a graphical element 138 may be selected to view the details of that schedule. A graphical element 140 may be selected to edit the schedules, and a graphical element 142 may be selected to copy the selected schedule. Screen 128 also includes a graphical element 144 that may be selected to delete the selected schedule, and a graphical element 146 that may be selected to import or export the schedule, for example, to an external device connected to controller 22 through communication interface 92 (FIG. 5). In certain embodiments, the schedule may also be assigned to periods, such as days, weeks, months, seasons, or years, using graphical element 148 to assign the selected schedule to dates on a calendar. Further, a new schedule may be created by selecting graphical element 150. Screen 128 also includes a graphical element 151 that may be selected to return to the home screen, for example, screen 104 as shown in FIG. 7.

FIG. 9 depicts a screen 152 that may be used to create a new operating schedule. For example, a user may select graphical element 150 of screen 128 in FIG. 8 to display screen 152. Screen 152 includes tabs 154, 156, 158, 160, 162, and 164 that may be selected to enter and/or adjust settings for the new schedule. In certain embodiments, a user may select one of the tabs 154, 156, 158, 160, 162 to view a screen corresponding to the selected tab. As shown, the “NAME” tab 154 has been selected and includes a window 170 that displays the current name of the schedule, in the case, “Schedule 1.” A graphical element 172 may be selected to edit the name of the schedule, for example, using a key pad that may be displayed on touch screen 45 in response to selection of graphical element 172. Screen 152 also includes a graphical element 174 that may be used to cancel the creation of a new schedule and return to the home screen. After a schedule has been named, a user may select graphical element 176 to save the new schedule and exit to the home screen. However, if a user wishes to enter additional parameters for the new schedule, a user may select graphical element 178 to proceed to the next tab, as shown in FIG. 10.

FIG. 10 depicts a screen 179 that prompts a user to enter schedule information. Specifically, screen 179 includes instructions 180 prompting a user to select days of the week for the schedule. The days of the week may be selected by selecting corresponding graphical elements 182. In certain embodiments, the schedule may include default settings with values that comply with the Energy Star energy efficiency guidelines set by the Environmental Protection Agency (EPA) and the U.S. Department of Energy. After a user has selected a day to edit through graphical element 182, a user may select graphical element 178 to edit the operating schedule for that day.

FIG. 11 depicts a screen 184 for assigning schedule events to the selected day. Screen 184 includes graphical elements 186 that may be selected to specify the number of events for that day. As shown, four events have been selected and, therefore, screen 184 includes four graphical elements 188 that correspond to each of the events. However, in other embodiments, if a user has selected two events, for example, only two of the graphical elements 188 may be shown on screen 184. A user may select one of the graphical elements 188 and them may use graphical element 190 to specify a start time for the selected event. For example, a user may select arrows 192 to increase or decrease the start time, which is shown in a window 194 of graphical element 190. After a user has adjusted the start times, a user may select graphical element 196 to return to the previous screen shown in FIG. 10 or may select graphical element 178 to advance to the next tab as shown in FIG. 12.

FIG. 12 depicts a screen 198 for entering heating and/or cooling temperatures for each of the events. Each of the events has a corresponding graphical element 200 that may be selected to adjust the heating or cooling temperature set points. In certain embodiments, the cooling temperature set point may be shown in one color while the heating temperature set point is shown in another color. For example, the temperature 70° may be shown in red to indicate that it is the heating temperature set point while the temperature 73° may be shown in blue to indicate that is it the cooling temperature set point. Further, in certain embodiments where only a heating or cooling system may be employed, only the heating or cooling temperature set point may be shown on graphical elements 200. After a user has selected an event to edit, a user may select graphical element 178 to display a screen 202 (FIG. 13) for editing the selected event.

FIG. 13 depicts a screen 202 with graphical elements, such as slide bars 204A and 204B that may be employed to adjust the heating or cooling temperature set points for the selected schedule event. In certain embodiments, each slide bar 204A and B may be a different color to facilitate user identification of the slide bar corresponding to the heating temperature set point and the slide bar corresponding to the cooling temperature set point. For example, slide bar 204A may be used to adjust the heating temperature set point and may be shown in red, while slide bar 204B may be used to adjust the cooling temperature set point and may be shown in blue. Further, in certain embodiments, a graphic, such as a snowflake, may be shown on slide bar 204B to indicate cooling while another graphic, such as a heating coil, may be shown on slide bar 204A to indicate heating. The graphics may facilitate intuitive identification of which slide bar corresponds to heating temperature set point and the cooling temperature set point.

Each slide bar 204A and 204B includes a set of indicators 206, 208, 210, and 212 that show the maximum and minimum temperature set points that may be selected. Each slide bar 204A and 204B generally represents an incremental range of temperatures that may be selected within the maximum and minimum temperature ranges, as shown by indicators 206, 208, 210, and 212. For example, the incremental temperature values may be spaced in one degree temperature increments along slide bars 204 and 204B. According to certain embodiments, controller 22 may determine the maximum and minimum temperatures based on factors such as the equipment models included within HVAC system 52, the operating efficiency of HVAC system 52, the operating mode (i.e., heating, cooling, high cooling, low cooling, high heating, low heating, auxiliary heat, etc.), the thermal loading of the home, the geographical location, structural characteristics of the home, user preferences based on comfort selections, efficiency settings, or the like, and installer and/or factory settings. In certain embodiments, tables and/or algorithms correlating HVAC system conditions to maximum and minimum temperature settings may be stored within memory 84 (FIG. 5). Further, in certain embodiments, the maximum and minimum temperature values may be received through communication interface 92 and/or I/O port 90, as shown in FIG. 5.

Each slide bar 204A and 204B includes a moveable feature, such as a slider 214A or 214B that may be moved along slide bar 204A or 204B to adjust the temperature set point. Each slider 214A and 214B may include an indicator 215A and 215B that displays the current temperature set point. A user may touch and drag sliders 214A and 214B along the corresponding slide bars 204A and 204B until the desired set point is selected. In addition to sliders 214A and 214B, a user may select graphical elements 216A, 216B, 218A, and 218B to increase or decrease the temperature set point. In response to selection of graphical elements 216 or 218, the corresponding slider 214A or 214B may move accordingly to reflect the adjusted temperature setting. For example, in response to selection of graphical element 216A or 216B, controller 22 may move slider 214A or 214B to the right to increase the temperature setting by one increment, for example, one degree. In response to selection of graphical element 218A or 218B, controller 22 may move slider 214A or 214B to the left to decrease the temperature by one increment.

As sliders 214A and 214B are moved, either through sliding or selection of graphical elements 216 and 218, indicators 215 may be updated to correspond to the new temperature set point. Upon selection of a new set point, a user may select graphical elements 174 and 220 to cancel or to apply the new set point to the schedule. Specifically, a user may select graphical element 174 to cancel the changes and return to the prior set points. However, if a user would like to implement the new set points, the user may select graphical element 220 to apply the new temperature set points.

In response to selection of graphical element 220, controller 22 may determine the temperature corresponding to the selected set point. For example, as shown in FIG. 5, controller 22 may receive the touch event information that moves sliders 214A and 215B from touch screen 45 and may correlate the movement on slide bars 204A and 204B to the temperature value displayed by indicators 215A and 215B. Controller 22 may store the new set point in a corresponding control registry of controller 22. Further, in certain embodiments, the controller may send the registry values to control circuits 58, 60, or 62 for backup storage.

In other embodiments, the shape, style, design, graphics, and the like of the graphical elements and/or the moveable features may vary. As shown in FIG. 13, the incremental temperature ranges that may be selected are shown on slide bars 204A and 204B. However, in other embodiments, the graphical elements representing the incremental temperature ranges may vary. For example, in certain embodiments, the incremental temperature ranges may be shown on virtual thermometers with sliders that may moved along the thermometers to adjust the temperature set points. In another example, the incremental temperature ranges may be displayed on a dial with moveable hands that a user may slide around the dial to adjust the temperature set points.

FIG. 14 depicts a screen 222 for adjusting fan settings for the selected schedule. Screen 222 includes graphical elements 224 that may be selected to adjust fan settings for each event of the selected schedule. For example, a user may choose between an automatic fan mode where the HVAC system automatically varies the airflow based on the state of the equipment and a continuous fan mode where the HVAC system operates the indoor fan continuously or at set intervals regardless of the state of equipment. In certain embodiments, graphical elements 224 may include indicators 225 identifying the current fan settings. After a user has adjusted the fan mode for each of the events, a user may select graphical element 178 to proceed to the next screen to adjust humidity values.

As shown in FIG. 15, a screen 226 may be used to select humidity set points for the heating and cooling modes. Screen 226 includes graphical elements 228 and 230 that may be selected to adjust the humidity values for the heating and cooling modes, respectively. An indicator 232 may be displayed adjacent to graphical elements 228 and 230 to indicate the selected mode. For example, as shown in FIG. 15, the heating graphical element 228 has been selected. Screen 226 also includes graphical elements 234 and 236 that may be selected to selectively enable an automatic humidity mode or a manual humidity mode. For example, in automatic mode, controller 22 may determine the humidity set point based on operating parameters on the HVAC system 52, such as the temperature set point, the outside temperature, and/or the outside humidity among others. However, in manual mode, controller 22 may operate HVAC system 52 to in accordance with a humidity set point selected by a user.

In manual mode, a user may select the desired humidity level from a range of humidity values displayed on a slide bar 238. Specifically, slide bar 238 includes indicators 240 and 242 that display the minimum and maximum humidity set points, respectively. In certain embodiments, the maximum and minimum humidity set points may be set by the factory or by an installer based on performance capabilities the particular equipment installed in the HVAC system. Further, in certain embodiments, controller 22 may determine the maximum and minimum humidity set points based on factors such as the equipment models included within HVAC system 52, the operating efficiency of HVAC system 52, the operating mode, and installer and/or factory settings. In certain embodiments, tables and/or algorithms correlating HVAC conditions to maximum and minimum humidity set points may be stored within memory 84 (FIG. 5). Further, in certain embodiments, the maximum and minimum humidity set points may be received through a communication interface 92 and/or through I/O port 90, as shown in FIG. 5.

Slide bar 238 includes a slider 244 that may be moved along slide bar 238 to adjust the humidity set point. Slider 244 may include an indicator 245 that displays the current humidity set point. A user may touch and drag slider 244 along slide bar 238 until the desired set point is selected. In addition to slider 244, a user may select graphical elements 246 and 248 to increase or decrease the humidity setting. In response to selection of graphical element 246 or 248, slider 244 may move accordingly to reflect the adjusted humidity setting. As slider 244 is moved, either through slider 244 or selection of graphical elements 246 and 248, indicator 245 may be updated to correspond to the new humidity set point. Upon selection of a new set point, a user may select graphical element 178 to apply the new setting.

After a user has created a schedule, or adjusted a schedule, as described above with respect to FIGS. 8-15, a user may view a summary of the schedules. For example, controller 22 may display a screen 250 in response to selection of graphical element 138 (FIG. 8). Screen 250 includes graphical elements 252 that may be selected to view the scheduled for the corresponding day of the week. In response to selection of one of the graphical elements 252, a window 254 describing the schedule for that day of the week may be shown on screen 250. After a user has viewed the schedule, a user may select graphical element 262 to close the schedule viewer and return to the main scheduling screen 128 shown in FIG. 8.

As depicted in FIG. 17, a user may apply the schedules to periods shown on a calendar. For example a user may select graphical element 148 (FIG. 8) to display a screen 264 for assigning a schedule to periods shown on a calendar. Screen 264 includes a window 266 that shows calendar months and seasons that may be selected for a schedule. In other embodiments, window 266 may show calendar days, weeks, or the like. To assign a schedule to a certain period, a user may use the arrow graphical elements 134 and 136 to scroll thorough and select one of the schedules shown in window 132. After a schedule has been selected, a user may select a graphical element 270 to assign the schedule to a corresponding season such as winter, spring, summer, and/or fall. Further, a user may select a graphical element 268 to assign the selected schedule to the entire year. Moreover, a user may select a graphical element 272 to assign the selected schedule to a corresponding month. In certain embodiments, upon selection of graphical elements 272, individual days within a month may be selected. After a user has assigned the schedule to the desired periods, a user may select graphical element 274 to return to the main scheduling screen 128 (FIG. 8).

As shown in FIG. 18, a user may also apply the schedules to different zones managed by the HVAC system. For example, a user may select graphical element 126, as shown in FIG. 7, to display a screen 276 for managing zones of HVAC system 52. HVAC system 52 may include separate HVAC zones for rooms within the house, such as the living room, kitchen, bedrooms, dining room, and/or den. Screen 276 includes graphical elements 278 that correspond to each of the zones within the HVAC system. A user may select a schedule using graphical elements 134 and then may select graphical elements 278 assign the selected schedule to specific zones. After a user has assigned zones to a schedule, a user may select a graphical element 220 to apply the new zone settings and return to a main screen of controller 22.

FIG. 19 depicts another embodiment of a main menu screen 279 that may be used to navigate through menus of GUI 46. In certain embodiments, screen 279 may serve as a dashboard display to facilitate controlling HVAC system 52. Further, background 97 of screen 279 may be customized as described above with respect to FIG. 6. Screen 279 includes indicators 48E and 48F that may display status information for HVAC system 52. For example, indicator 48E may display an icon indicating that humidity control is on. In certain embodiments, indicator 48 may show an image of a droplet appearing on screen 279 to indicate that HVAC system 52 is operating in a humidifying mode and may show an image of a droplet fading from screen 279 to indicate the HVAC system 52 is operating in a dehumidifying mode. Indicator 48F may display a fan icon indicating that the fan is operating in automatic mode. In certain embodiments, indicator 48F may show an image of a fan spinning at a speed that represents the current fan setting.

Screen 279 also includes graphical elements 50F and 50G that display information about the status of HVAC system 52. For example, graphical element 50F displays a snowflake icon with text indicating that the cooling system is off. However, in other embodiments, when the cooling system is operational the snowflake icon may appear along with an indicator displaying a current percentage of cooling capacity. In another example, graphical elements 50G a heating icon with text indicating the current temperature set point for the heating mode. Further, graphical elements 50F and 50G may be animated to indicate the current level of heating and cooling being performed. For example, graphical elements 50F and 50G may pulse and/or glow when the HVAC system 52 is actively heating or cooling. Moreover, the frequency of the pulse may be linked to the level of heating or cooling (i.e., to indicate whether the system is operating in a first stage or a second stage, or to show a modulation rate).

Screen 279 also includes graphical elements 283, 284, and 286 that may be employed to view screens and/or menus for changing operating parameters of HVAC system 52. For example, graphical element 283 may be selected to return to standby screen 94 as shown in FIG. 6. Graphical element 284 may be selected to override the current temperature settings as discussed below with respect to FIG. 53. Graphical element 286 may be selected to override the current schedule as discussed below with respect to FIG. 20.

FIG. 20 depicts a screen 288 that may be employed to implement a schedule override. For example, screen 288 may be displayed in response to selection of graphical element 286 as shown in FIG. 19. Screen 288 includes graphical elements 290 corresponding to each of the scheduled events for the current day. An indicator 291 appears over the current event. A graphical element 292 may be selected to view the schedule corresponding to that event. Further, a graphical element 294 may be selected to set a vacation schedule that overrides the currently programmed schedule.

As shown in FIG. 21, a screen 296 may be displayed to implement a vacation schedule. Screen 296 includes graphical elements 298 and 300 that may be selected to scroll through calendar months 302. After selecting a desired month, graphical elements 304 and 306 may be selected and dragged to corresponding days on calendar 302 to set a vacation schedule. In other embodiments, a start date and an end date may be selected or days may be touched by a user to highlight those days as vacation days. Once days are selected, a schedule may be applied to the selected vacation days to designate operating parameters, such as temperature set points, humidity set points, airflow settings, and the like for the selected vacation days. In certain embodiments, the vacation schedule may be configured as described above with respect to FIGS. 8-15. A user may then select graphical element 308 to save the vacation schedule.

A user also may user calendar 302 to identify special days, such as birthdays, holidays, anniversaries, or the like. As shown in FIG. 22, a screen 310 may display a calendar 302 with the current day 312 highlighted. A scroll bar 314 may be shown on a portion on screen 310 and may display icons 316 corresponding to certain holidays, such as birthdays, anniversaries, or the like. In certain embodiments, a user may select an icon 316 and drag that icon to a corresponding date 318 on the calendar. After identifying a special day on the calendar, a user may select buttons 320 to set alerts for those days. For example, a user may select a button 320 to display dashboard animation on a screen, such as screen 279 (FIG. 19) of controller 22 on the special day. In another example, a user may set a reminder that is displayed on a controller screen on the designated day. A user may select graphical element 308 to save the special day designations.

In certain embodiments, a user may select a different operating schedule for a special day. For example, controller 22 may display a screen on the special day to enable the user to specify an atypical set point for that day. For example, on the afternoon of a child's birthday party, a user may adjust the set point to five degrees cooler than normal to accommodate guests that may be present for the party. In another example, a heating temperature set point may be adjusted to increase at an earlier time to accommodate an early morning gathering.

GUI 46 also may facilitate customization of the backlight settings for controller 22 as shown in FIGS. 23 and 24. For example, through a settings screen 322, which may be accessed by selection of graphical element 108 shown in FIG. 7, a user may select a graphical element 328 for configuring the backlight. Screen 322 also may include other graphical element 326, 327, 330, 332, 334, 336, and 338 for viewing and adjusting various settings of controller 22. Screen 332 also includes a graphical element 340 that may be selected to return to a main screen.

As shown in FIG. 24, in response to selection of graphical element 328, controller 22 may display a screen 342 for adjusting display settings. For example, the display settings may be adjusted to enable a nightlight feature of controller 22. Specifically, screen 42 includes graphical elements 344 and 346 that may be selected to turn the nightlight feature on and off, respectively. After a user has enabled the nightlight feature, for example, through selection of graphical element 344, a slide bar 348 may be employed set the display brightness. Slide bar 348 includes indicators 350 and 352 displaying the maximum and minimum brightness, respectively. Slide bar 348 also includes a slider 354 that may be selected and dragged by a user along the slide bar 348 to set the brightness for the nightlight feature. An indicator 355 may be shown on slider 354 to display the current brightness value. Further, graphical elements 356 and 358 may also be selected to increase or decrease the brightness.

Screen 342 also includes graphical elements 360 and 362 that may be selected to set the time the nightlight is turned on and off. For example, graphical element 360 may be selected to set the time that the nightlight turns on and graphical element 362 may be selected to set the time that the nightlight turns off. After a user has selected graphical element 360 or 362, a user may select the arrows 364 to increase or decrease the time. Similarly, a user may select graphical element 362 to set the time the nightlight turns off. After setting the night light brightness and time period, a user may select graphical element 274 to return to the main screen. Further, in certain embodiments, a user may assign the nightlight feature to one or more operating schedules for HVAC system 52. For example, a user may program the times and intensity for the nightlight feature as part of the “Sleep” event shown in FIG. 16. Through an operating schedule, a user may set separate nightlight times and intensities for different days of the week. For example, a user may have the nightlight turn on at an earlier time on school days to accommodate a child's earlier bedtime. Further, controller 22 may automatically disable or enable the nightlight feature when certain schedules are selected. For example, when a user enables a vacation schedule as described above with respect to FIGS. 21 and 22, controller 22 may disable the nightlight feature to save energy.

FIGS. 25-28 depict screens of GUI 46 that may be employed to modify temperature set points when HVAC system 52 is in an Auto Changeover mode. In Auto Changeover mode, HVAC system 52 may automatically switch from heating operation to cooling operation based at least in part on the current room temperature and the temperature set point. As shown in FIG. 25, a screen 366 may be displayed on controller 22 that allows a user to adjust the temperature set points for the cooling and heating modes when the system is in an Auto Changeover mode.

Screen 366 includes an indicator 368 that displays the zone currently being controlled by controller 22. Screen 366 also includes indicators 48D, 48E, 48F, and 48G that display status information about HVAC system 52. A slide bar 370 includes separate sliders 372 and 374 that may be moved independently from one another along slide bar 370 to adjust the heating and cooling set points. Specifically, a user may touch and drag slider 372 along slide bar 370 to adjust the heating set point, and a user may touch and drag slider 374 along slide bar 370 to adjust the cooling set point. Each slider 372 and 374 includes an indicator 375 and 376 that may display the current temperature set point. Slide bar 370 also includes indicators 377 and 378 that represent the maximum and minimum temperature set points, respectively. Further, slide bar 370 includes off positions 382 and 384, which may disable the heating and cooling modes. For example, a user may touch and drag slider 374 to off position 382 to turn off the cooling mode, and a user may touch and drag slider 372 to off position 384 to turn of the heating mode.

Between sliders 372 and 374 is a deadband section 380. Deadband section 380 represents a temperature range where neither heating nor cooling may occur. According to certain embodiments, deadband section 380 may prevent HVAC system 52 from switching between the heating and cooling modes too rapidly and/or frequently. Slide bar 370 and sliders 372 and 374 may allow a user to visualize the size of deadband section 380. Further, in certain embodiments, slide bar 370 may allow a user to increase the size of deadband section 380 as shown in FIG. 26. In certain embodiments, the slide bar 370 may facilitate visualization between the heating and cooling set points, which in certain embodiments may allow the user to maximize the size of deadband section 380, which may result in more efficient heating and cooling.

As shown in FIG. 26, a user has adjusted slider 374 to the right to increase the cooling temperature set point and has adjusted slider 372 to the left to decrease the heating temperature set point. These adjustments have increased the size of deadband section 380. To the right of slider 374 is the cooling region 388 which may be shown in a different color or shading, such as blue, to show that cooling may occur within this region. To the left of slider 372 is the heating region 386, which may be shown in a color such as red to show that heating may occur within this region. The deadband section 380 may be shown in a neutral color such as gray that indicates to the user that no heating or cooling may occur when the temperature falls within this section. The deadband section 380 may represent an efficient operating range because no heating or cooling may occur within this range.

Further, in certain embodiments, screen 366 and slide bar 370 may facilitate understanding of how HVAC system 52 operates. For example, controller 22 may prevent a user from adjusting the slider 372 to a higher set point than the current set point of slider 374. In certain embodiments, if a user attempts to move slider 372 to far to the right to overlap with slider 374, controller 22 may move the cooling set point to the right to maintain a minimum deadband between slider 372 and 374.

FIG. 27 depicts screen 366 after a user has moved slider 372 to the off position 384 to disable the heating mode. As noted above, a user may move one or both sliders 372 and 374 to their respective off positions 382 and 384 to disable heating mode, cooling mode, or both. Further, in certain embodiments, a user may tap a respective off position 382 or 384 to turn off the heating or cooling mode. In certain embodiments, when a heating or cooling mode is off, the respective off position 382 or 384 may display a color corresponding to the system such as blue or red, to indicate that the respective mode has been disabled. When an off position 382 and 384 is tapped, controller 22 may display the respective slider 372 or 374 and may display a suggested set point to assist a user in enabling the heating or cooling mode.

FIG. 28 depicts another embodiment of a screen 390 that may be used to adjust a temperature set point for a heating mode or a cooling mode. Screen 390 includes a slide bar 392 with a slider 394 that may be used to adjust a heating or cooling temperature set point. An indicator 396 on slider 394 displays the current temperature set point. Further, as a user moves slider 394 along slide bar 392, another indicator 398 may appear above the slide bar 392 to allow the user to see the current temperature set point.

Slide bar 392 also includes indicators 400 and 402. Specifically, indicator 400 indicates when the cooling mode has been enabled, for example, by lighting up or by changing color. Indicator 402 may indicate when the heating mode has been enabled, for example, by lighting up or changing color. As shown, HVAC system 52 is currently operating in a cooling mode. An indicator 404 may appear below indicator 400 to provide information relating to the cooling capacity. For example, as shown, indicator 404 alerts a user that the cooling system is currently operating at 62% of the cooling capacity. When HVAC system 52 is operating in the heating mode, a similar indicator (not shown) may appear below graphical element 402. As shown, no indicator appears below graphical element 402 indicating that the heating mode is off. However, in other embodiments, when the heating mode is off, an indicator may appear below graphical element 402 indicating that the heating capacity is at 0%.

In addition to facilitating user adjustment of temperature set points, controller 22 may notify a user when over-adjustment of a temperature set point has been attempted. For example, as shown in FIGS. 29 and 30, controller 22 may monitor the amount of set point adjustment and/or the frequency of set point adjustments to reduce “slamming” and/or over adjustment. For example, slamming may occur when a user reduces the set point to the maximum allowed temperature in an attempt to rapidly cool or heat the environment. However, slamming may result in inefficient heating or cooling as the system may overcorrect and require additional heating or cooling to compensate for the large temperature change.

FIG. 29 depicts a method 406 of detecting over adjustment of a temperature set point. Method 406 may begin by receiving (block 408) a temperature set point adjustment. For example, a user may adjust a temperature set point by moving a slide bar as described above with respect to FIG. 13. Upon receiving a set point adjustment, controller 22 may determine (block 410) whether the adjustment exceeds a predetermined threshold. For example, controller 22 may compare the new temperature set point to the previous temperature set point to determine the amount of change in the temperature set point.

Controller 22 may then determine whether the change in the temperature set point exceeds a predetermined threshold. For example, memory 84 (FIG. 5) may store one or more predetermined thresholds levels. In certain embodiments, the threshold levels may depend on factors such as the current temperature, the operating mode of HVAC system 52, or the outside temperature, among others. If controller 22 determines that the amount is less than the value stored in memory, controller 22 may adjust (block 412) the temperature set point. However, if controller 22 determines that the adjustment exceeds the threshold level, controller 22 may display (block 414) a notification. For example, controller 22 may display a notification on display 44 (FIG. 5) that informs the user of the large temperature change. For example, controller 22 may display a message explaining that changing the temperature set point by this amount could cause the user to be too cold or too warm in a few moments. In another example, controller 22 may display a notification informing the user that the large adjustment could reduce the efficiency and/or damage the HVAC system. Controller 22 may then request verification from the user prior to adjusting the temperature set point by an amount that exceeds the predetermined threshold. Controller 22 also may display a notification suggesting a smaller change in the temperature set point or suggesting changing the temperature set point by such a large amount for only a short period of time.

FIG. 30 depicts a method 416 for monitoring the frequency of set point adjustments, which may be implemented by controller 22 in addition to, or instead of, monitoring the amount of change in the temperature set point. Method 416 may begin by receiving (block 418) a temperature set point adjustment. Controller 22 may then determine (block 420) whether the current adjustment causes the adjustment frequency to exceed a predetermined threshold. For example, memory 84 may store adjustment frequencies specifying the number of set point adjustments that may be made in set periods of time. In certain embodiments, controller 22 may track the number of adjustments within multiple time periods. For example, controller 22 may check for multiple frequencies, such as a certain number of adjustments within an hour and a certain number of adjustments within a fifteen-minute period. Further, the adjustment frequencies may depend on factors such as the current temperature, the operating mode of HVAC system 52, or the outside temperature, among others.

If the adjustment frequency is less than the predetermined threshold, controller 22 may then adjust (block 422) the set point. However, if the adjustment causes the frequency to exceed the predetermined threshold, controller 22 may display (block 424) a notification on touch screen 45. For example, controller 22 may display a message explaining that system efficiency and comfort are maximized when the temperature set point is not frequently adjusted. In another example, controller 22 may display a message indicating how many times the set point has been adjusted within a certain period. Further, controller 22 may suggest waiting a certain time period before implementing the set point adjustment. Moreover, in certain embodiments, controller 22 may ignore the set point adjustment if the adjustment causes the frequency to exceed the predetermined threshold. In certain embodiments, controller 22 may ignore set point adjustments that are too frequent to optimize energy efficiency, performance, or equipment life, among others. Controller 22 may also request user verification prior to making the set point adjustment.

Although method 406 (FIG. 29) and method 416 (FIG. 30) are described above with respect to temperature set points. The methods also may be implemented for adjustments of other operating parameters, such as humidity set points, fan settings, or the like. Further, in certain embodiments, methods 406 and 416 may automatically override adjustment by the user to maximize system efficiency and comfort and protect HVAC system 52.

GUI 46 also may facilitate user interaction with controller 22. For example, as shown in FIGS. 31 and 32, GUI 46 may include components that enable intuitive selection of the display language. As shown in FIG. 31, a graphical element 426 may be displayed on a screen, such as screen 279 (FIG. 19). Graphical element 426 may include graphics that may enable a user to recognize the icon as a language selection icon regardless of the user's native language. Further, in other embodiments, graphical controller 22 may display graphical element 426 in response to detecting connection of an external device through communication interface 92 or I/O port 90 (FIG. 5). For example, a service technician may connect a troubleshooting device through I/O port 90, and in response to detecting connection of the device, controller 22 may display graphical element 426 on display 44. Moreover, in other embodiments, graphical element 426 may be selected through a setting screen 322 as described above with respect to FIG. 23. A user, such as a technician, may select graphical element 426 to change the language shown by GUI 46.

In response to selection of graphical element 426, controller 22 may display a window 428 as shown in FIG. 32. Window 428 may facilitate selection of a language for GUI 46. Specifically, window 428 includes selection bars 430 that may be selected by a user through touch screen 45 to select a corresponding language, such as English, Spanish, or French, among others. Window 428 also includes graphical element 432 that may be selected to set the duration of the language selection. For example, a graphical element 432 may be selected to switch the language from English to Spanish for a fifteen minute period. The selection of the period may allow the user, such as a service technician, to change the language to facilitate service of controller 22 and then the language automatically may switch back without requiring the technician to return the language to the previous state. The temporary option for a change in the display language may promote efficiency during service calls and/or may ensure that controller 22 is not left displaying a language foreign to the homeowner after completion of a service call.

Window 428 also includes graphical elements 434 and 436 that may be selected to cancel or apply the language selection. For example, a user may select graphical element 434 to cancel the language selection and to return to the previous setting. A user may select graphical element 436 to apply the new language setting. In response to selection of graphical element 436, controller 22 may apply the language setting to GUI 46. For example, controller 46 may change the screen of GUI 46 to show text in the corresponding language. According to certain embodiments, memory 84 may store screens corresponding to each of the languages that may be selected. Controller 22 may select the appropriate set of screens for the selected language and may display these screens through GUI 46.

GUI 46 also may facilitate voice control of controller 22 as shown in FIG. 33. Controller 22 may include an audio feature 438 such as a speaker and microphone disposed in enclosure 42 of controller 22. In these embodiments, processor 82 (FIG. 5) may include a voice-processing feature that enables controller 22 to receive and/or transmit voice communications with a user 440. The voice-processing feature may include control circuitry, hardware, and/or software that enable voice communications between controller 22 and user 440.

To initiate voice control, a user 440 may transmit a voice enable command 442 to controller 22. For example, user 440 may speak a command such as, “voice control” that may be recognized through audio feature 438. Controller 22 may process the voice command and display an indicator 444 that shows that voice control has been enabled. Controller 22 may then wait to receive a voice command from user 440. For example, user 440 may transmit a voice command 446 to controller 22 that changes a temperature set point of HVAC system 52. In other embodiments, voice commands may be used to control fan speed, adjust humidity, hold a certain temperature for a set time period, or to perform maintenance functions, such as downloading fault codes to an external device.

Controller 22 may then process the command and transmit a verification request 448 through speaker 438 to user 440. For example, a verification request may be audibly produced by controller 438 that may say, “request received to change temperature set point to 72 degrees, say yes to confirm, no to deny.” User 440 may then transmit the requested verification 450 to controller 22. For example, the user may say “yes” to confirm the command. In response to receiving verification 450, controller 22 may process the command. For example, as shown in FIG. 33, controller 22 may change the temperature set point to 72 degrees. Controller 22 may then display a window 452 indicating that the command has been completed. In certain embodiments, controller 22 may display various screens of GUI 46 that list voice commands that a user may transmit to controller 22. Further, in certain embodiments, instead of, or in addition to, displaying a window 452, controller 22 may emit an audible verification notifying a user that the command has been completed. For example, as shown in FIG. 33, controller 22 may emit an audible notification that says, “set point changed.”

FIG. 34 depicts an embodiment where controller 22 may by controlled through an external device 454. External device 454 may be connected to controller 22 through I/O port 90 and/or communication interface 92 as shown in FIG. 5. External device 454 may be a portable electronic device, such as a cell phone, personal data assistant (PDA), computer, personal navigation device, or the like. In certain embodiments, external device 454 may be connected to controller 22 through a wireless network connection, or a personal area network connection (PAN), such as a Bluetooth connection.

Controller 22 may display one or more screens 456 of GUI 46 for communicating with controller 22 via external device 54. For example, screen 456 may include a window 458 that indicates when an external device has been connected. Further, screen 456 may display a window 460 for entering data 462 from external device 454. As data 462 is received by the controller 22 from external device 454, data 462 may be displayed within window 460. In certain embodiments, data may be entered through a keypad or other data entry device of external device 454. Data 462 may then be transmitted to controller 22 through communication interface 92 (FIG. 5). Further, in certain embodiments, data may be transmitted using a short messaging service (SMS), an enhanced messaging service (EMS), a multimedia messaging service (MMS), instant messaging, mobile instant messaging, and/or email, for example.

In certain embodiments, controller 22 may transmit corresponding user interface information 464 to be displayed on external device 454 to facilitate entry of data 462 through external device 454. In certain embodiments, user interface info 464 may include screens that may be displayed on external device 454 to facilitate entry of data for controller 22. Communication through external device 454 may allow a user to quickly enter data in a data entry format that the user may be familiar with, for example, a keyboard, or a cell-phone keypad. In certain embodiments, external device 454 may be used to control parameters, such as a temperature set point, relative humidity set point, fan speed, or vacation settings, through external device 454. For example, a user may return from vacation earlier than expected and may communicate with controller 22 over external device 454 while the user is traveling home from the airport. In certain embodiments, communication by external device 454 may enable a longer-range communication, for example, through a wide area network (WAN).

As shown in FIG. 35, controller 22 also may communicate with external servers through communication interface 92. For example, controller 22 may receive advertisements through communication interface 92. As shown in FIG. 35, controller 22 may present a screen 466 that includes an advertising message 468. For example, controller 22 may display an advertising message 368 at lunch time that includes a coupon for a nearby restaurant. In another example, advertising message 468 may be based at least in part on indoor or outdoor temperature conditions. For example, when the outdoor temperature is high, advertising for ice cream may be displayed. In another example, when controller 22 determines that the scheduled program is transitioning from a nighttime event to a daytime event, a coffee advertisement may be displayed. Further, in other embodiments, controller 22 may present advertising messages 468 sponsored by the equipment manufacturer, installing dealer, servicing dealer, or the like that include discounts on equipment, maintenance parts, or system upgrades for HVAC system 52.

As shown in FIG. 36, controller 22 also may be used to display a screen 470 that may display opportunities to purchase software or other products for HVAC system 52. For example, screen 470 may display software upgrades 472 such as themes or skin components that may change the look and feel of GUI 46. In another example, software upgrades 472 may include software applications that may be purchased to enhance features of HVAC system 52. For example, software applications may include a photo screensaver that may allow a user to upload and store photographs within memory 84 of controller 22 for display on controller 22. In another example, an application may include an energy use tracker that charts a user's energy from year to year.

Upon selection of a type of software upgrade 472 (i.e., themes, applications, skins, etc.), screen 470 may display windows 474 describing the available software upgrades. Windows 474 may include graphical elements 476 that may be selected to select the corresponding software upgrade for purchase. A user may then select a graphical element 478 to purchase the selected software. A user also may select a graphical element 480 to cancel the transaction.

Upon selection of graphical element 478, a user may be directed to a screen that facilitates payment for the software upgrades 472. For example, GUI 46 may display a screen for entering credit card information. In certain embodiments, the payment information may be transmitted to the software provided through communication interface 92 (FIG. 5). In certain embodiments, the software upgrades may already be installed on controller 22, for example, stored within memory 84 and unlocked upon purchase. Further, in certain embodiments, software upgrades may be made through a local dealer who may send unlock codes to controller 22 through communication interface 92.

As shown in FIGS. 37 and 38, GUI 46 also may include screens for customizing the layout of GUI 46. For example, a user may access a screen 482 that allows a user to customize screen layouts. Screen 482 may display a window 484 of screen layout options that may be selected using arrows 134. After a user has selected a screen layout, a user may mark selection boxes 486 corresponding to functions that may be displayed on the selected screen layout. For example, a user may select a dashboard layout within window 484 and then may select functions 486 corresponding to graphical elements that may be shown on the dashboard screen. Screen 484 also includes graphical elements 488 and 490 that may be selected to cancel the changes or to save the changes. In response to selection of graphical element 490, controller 22 may store the changes within memory 84 (FIG. 5). Further, in certain embodiments, upon selection of graphical element 490 a user may be prompted to enter a name for the configuration so that configurations for multiple users may be stored by controller 22. Screen 482 also may include a graphical element 492 that may be selected to restore the default settings. Further, a user may select graphical element 494 to change the location of the functions and/or graphical elements on the selected screen.

As shown in FIG. 38, in response to selection of graphical element 494, controller 22 may display a screen 496 that shows the selected screen with graphical elements and indicators that may be moved to a new location on the screen. For example, a user may touch and drag graphical elements 283, 284, and 286 and indicators 48E and 48F to different areas of screen 496. After a user has moved the graphical elements and indicators to the desired locations, a user may select graphical element 490 to save the changes.

FIG. 39 depicts a screen 498 of GUI 46 that may facilitate entry of information into controller 22. For example, screen 498 may be used to enter dealer information, for example, by selection of graphical element 116 shown in FIG. 7. Screen 498 includes a window 500 that displays data entry fields 501. A user may select the data entry field to enter data for that field. Further, a user may scroll through data entry fields 501 using a slide bar 502. After a user has selected a data entry field 501, a user may enter information through a slide bar 504.

Slide bar 504 includes a slider 506 that may be moved along slide bar 504 to select alphabetical and/or numerical values. An indicator 508 is shown within slider 506 to indicate the current alphanumeric value selected on slider 506. A toggle button 507 may be selected to change slide bar 504 between alphabetical values and numerical values. In certain embodiments, a user may enter information by tapping slider 506 after it shows the desired alphanumeric value. The information may then be shown as entered information 510 within window 500. Screen 498 also includes a spacebar 512, a return key 514 and a delete key 516 that may facilitate entry of alphanumeric information through touch screen 45. Slide bar 504 may facilitate the entry of alphanumeric information by allowing a large number of values to be entered in a limited screen size. Further, in certain embodiments, additional toggle keys 507 may be includes to display symbols or the like on slide bar 504.

FIGS. 40 and 41 depict screens of controller 22 that may facilitate the scaling of fonts and/or graphics. For example, as shown in FIG. 40, controller 22 may display a screen 518 that is similar to the dashboard screen shown in FIG. 3. However, screen 518 may include an additional graphical element 520 that may be selected by a user to scale the size of objects displayed on the screen. In response to selection of graphical element 520, controller 22 may display a window 522 with a slide bar 524 for scaling the text and/or graphics. Slide bar 524 may include a slider 526 that may be slid along slide bar 524 by a user to increase or decrease the size of the text and graphics. Window 522 may display indicators 528 and 530 that display the maximum and minimum sizes.

After a user has adjusted the scale by moving slider 526, a user may select graphical element 532 to scale the text and graphics to the selected size. For example, as shown in FIG. 41, controller 22 may display a screen 534 that includes portions of previous screen 518 that have been increased in size. For example, the time is now shown in a larger font. Further, the outside temperature indicator 48D has been increased in size. The menu graphical element 50 has also been increased in size. Further, a graphical element 536 displays the current cooling set point along with enlarged graphical elements 538 that may be selected to increase or decrease the cooling set point.

Controller 22 also may automatically adjust the text displayed to allow the same information to be displayed in the same area but with a larger font. For example, humidity indicator 540 has been truncated to “HUM” to allow a larger font size to be used. Further, in other embodiments, text may be replaced with a graphical representation of the text to facilitate displaying the same information in a larger size. Additionally, content deemed less critical may be manually or automatically removed to accommodate the larger display. For example, the maintenance alert 50E has been removed but may be accessed through graphical element 50D in a submenu. In certain embodiments, scaling of font size may allow users with vision limitations to comfortably read the display.

FIGS. 42 and 43 depict screens of GUI 46 that may facilitate user understanding of zones within HVAC system 52. In certain embodiments, controller 22 may display individual zones in a continuous fashion so that the entire floor plan, or desired portion thereof, of a building can be recognizable and identified by the user. As shown in FIG. 42, a user, such as an installer, may create a visual and/or virtual representation of zones within HVAC system 52 through a screen 542. In certain embodiments, screen 542 may be displayed in response to selection of graphical element 126, as shown in FIG. 7. Screen 542 includes a graphical element 546 that may be selected to edit the layout of zones within HVAC system 52. For example, a line defined by end points 548 may be selected on touch screen 45 and dragged to move or edit the size. In certain embodiments, an installer may create a visual representation of the homeowner's floor plan. Screen 542 also includes a window 550 with selectable elements 552 that may be dragged onto the layout 544. Selectable elements 552 may represent physical elements included inside or outside of the residence. For example, selectable elements 552 may include windows, doors, trees, cabinets, vents, swimming pools, or the like that may be added to layout 544.

Screen 542 also includes a graphical element 554 that may be selected to customize the look of the layout 544. For example, in response to selection of graphical element 554, controller 22 may display a screen for assigning different colors to sections of layout 544. In certain embodiments, a user may select colors that correspond to wall colors of the rooms represented in layout 544. In another example, a user may be able to name each of the rooms and/or each of the zones. Further, through graphical element 554 an installer may be able to adjust a schedule and/or temperature set points for each of the zones. Moreover, in certain embodiments, a user may select areas of layout 544 to assign those areas to different operating zones of HVAC system 52. For example, in response to user selection of a zone for an area of layout 544, controller 22 may assign the electronic dampers for the selected area to the selected zone. In this manner, a user may determine which areas of layout 544 correspond to each zone by selecting areas of layout 544. After installer has made the desired changes, an installer may select graphical element 490 to save the changes.

As show in FIG. 43, a user may view a screen 556 of GUI 46 to view the status of zones within zone layout 544. Screen 556 shows zone layout 544 with indicators 558 indicating the status of each zone. For example, as shown, indicators 558 include the temperature set point, the humidity set point, and the zone identifier, such as the name of the zone (i.e. kitchen, bedroom, living room, etc.) or a number corresponding to the zone. A user may select a zone to display a window 560 with information describing the settings for the selected zone. For example, window 560 may indicate whether the selected zone is being heated or cooled, and may include the temperature set point. Further, in certain embodiments, selecting a zone may display additional information about the zone, such as the current temperature, the fan speed, or other factors. Once a zone has been selected, a user may adjust a set point, such as a temperature set point, for the selected zone using graphical elements 562. After the appropriate changes have been made, a user may select graphical element 490 to save the changes.

As shown in FIG. 44, controller 22 may include a stylus 564 that may be used to operate touch screen 45. For example, a stylus may facilitate more precise selection of smaller areas of touch screen 45. Stylus 564 may be used to select portions of touch screen 45. Enclosure 42 of controller 22 may include a portion 566 with a receptacle 568 for storing stylus 564. In certain embodiments, stylus 564 may be stored within receptacle 568 of enclosure 42 when not in use. Further, receptacle 568 may be spring-loaded or may include a lock and releases mechanism that facilitates insertion and withdrawal of stylus 564.

FIG. 45 depicts an embodiment of controller 22 mounted flush within a wall 570 using a trim plate 572. Trim plate 572 may allow controller 22 to be mounted into a wall cavity so that the controller does not protrude from wall 570. In certain embodiments, controller 22 may be designed to snap into trim plate 572 so no tools are required for installation. Further, trim plate 572 may include an electrical connection 573 that couples controller 22 to a junction box 572 through a connector, such as a cable 576. Junction box 574 may be located within the space between walls 570 and may accommodate various modules 578 for upgrading controller 22. The use of an electrical connection junction box 574 may allow modules 578 to be added to controller 22 without increasing the depth of controller 22.

FIG. 46 depicts an embodiment of controller 22 where display 44 may be detached from a base 580 of controller 22. Base 580 may be mounted within a relatively permanent location, such as the wall of a home. However, a user, such as a technician, may wish to transport the display 44 of controller 22 to another location in the home to facilitate troubleshooting and/or service. For example, a technician may wish to transport display 44 to one of the units of HVAC system 52. Accordingly, display 44 may be detached from base 580 to allow a user to change settings for controller 22 from areas away from base 580.

When display 44 is mounted on base 580, electrical connectors 582 and 584 may operably couple display 44 to base 580. For example, base 580 may include electrical connector 582, which couples to corresponding electrical connector 584 of display 44. Base 580 also includes communication interface 92 (FIG. 5) which may allow display 44 to communicate with base 580 when display 44 is detached from base 580. For example, display 44 may include another communication interface 586 that allows communication with communication interface 92 of base 580. According to certain embodiments, communication interface 586 may include a wireless network communication interface that enables wireless communication between display 44 and base 580. In certain embodiments, display 44 may include a power supply and control circuitry that enables functionality of display 44 while detached from base 580.

Display 44 also may be designed to attach to a cradle or dock 588 that may provide a portable power source. Further, in certain embodiments, cradle 588 may serve as a docking station where display 44 may be coupled through media ports for memory upgrades, data downloads, or uploads, etc. Cradle 588 may include an electrical connector 590 that couples to electrical connector 584 to enable communication between display 44 and cradle 588.

FIGS. 47 and 48 illustrate accessory devices that may be used with controller 22 to enhance the appearance and/or to protect controller 22. For example, a face plate 592 may be disposed over controller 22 to protect the display when it is detached from a base portion, as discussed above with respect to FIG. 46. In certain embodiments, faceplate 592 may provide improved grip or texturing to reduce the risk of dropping controller 22. Further, in certain embodiments faceplate 592 may be constructed of cushioning material, such as rubber. As shown in FIG. 47, faceplate 592 may snap to or cling to a surface of controller 22. Further, in certain embodiments, faceplate 592 may be used to alter the color or look of controller 22, for example, to blend in with the wall of a home. In another example, faceplate 592 may allow a user to customize the appearance of controller 22. For example, a user may select a faceplate 592 that displays the logo of a sports team.

FIG. 48 is a front view of controller 22 depicting faceplate 592 attached to controller 22. Faceplate 592 may include a window 594 that allows display 44 to be accessed through faceplate 592.

FIGS. 49-52 depict embodiments of controller 22 that may include sensors for detecting conditions outside of enclosure 42 of controller 22. For example, as shown in FIG. 49, controller 22 may include a transmitter 596 and a receiver 598. According to certain embodiments, transmitter 596 may be a radio frequency transmitter and receiver 598 may be a radio frequency receiver. However, in other embodiments, any suitable transmitters and receivers may be employed. Transmitter 596 may transmit signals 600 to an object or surface, such as a wall 602, opposite from controller 22. Signals 600 may bounce off wall 602 and return to controller 22 through receiver 598. According to certain embodiments, signals 600 may allow controller 22 to measure the temperature of wall 602. For example, controller 22 may be mounted flush with wall 570, and, therefore, controller 22 may receive limited airflow through enclosure 42, which may impede measurement of the inside temperature using a temperature sensor included within enclosure 42. Accordingly, transmitter 596 and receiver 598 may be used to emit signals 600 for measuring the temperature. Further, in other embodiments, transmitter 596 and receiver 598 may be used to measure other parameters, such as humidity. Moreover, in certain embodiments, transmitter 596 and receiver 598 may be replaced by another type of sensor, such as infrared sensor.

As shown in FIGS. 50-52, transmitter 596 and receiver 598 may be used to detect motion in front of controller 22. Specifically, transmitter 596 and receiver 598 may be included within a motion sensor 604 that detects the presence of a person in front of controller 22. In certain embodiments, controller 22 may process data from motion sensor 604 to adjust a sensed temperature to account for the body heat of a person standing in front of controller 22. Further, in certain embodiments, motion sensor 604 may include a proximity sensor, thermal sensor, or the like.

As shown in FIGS. 51 and 52, motion sensor 604 may be used to determine whether a person is walking by controller 22 or coming toward controller 22. For example, as shown in FIG. 51, motion sensor 604 may transmit and receive signals 600 to receive motion data. Motion sensor 604 may process the motion data, for example, via processor 82 (FIG. 5) to determine whether a person is moving in a direction 608 parallel to controller 22, as shown in FIG. 51, or whether a person is moving in a direction 610 toward controller 22, as shown in FIG. 52. In certain embodiments, controller 22 may exit a standby mode upon detecting that a person is approaching as shown in FIG. 52. For example, controller 22 may transition from standby screen 94 (FIG. 6) to a home screen, such as the screen shown in FIG. 3, upon detecting that a person is approaching. Further, in certain embodiments, controller 22 may exit a standby mode based on the amount of time a person is present in front of controller 22.

Motion sensor 64 also may facilitate motion-based control of controller 22 by detecting and processing motion patterns. For example, memory 84 may store motion-based commands that may be received through motion sensor 64. In one embodiment, a user may wave a hand upward to increase a set point and may wave a hand downward to decrease a set point. In another example, a user may rotate a hand to adjust fan speed. In certain embodiments, motion-based control may be enabled by selecting a graphical element of GUI 46, for example, through a settings menu. In certain embodiments, motion sensor 64 also may be employed to restrict access to controller 22. For example, motion sensor 64 may be used to detect the height of a user. Controller 22 may then compare the detected height to a minimum height stored within memory 84, and may only allow a user to interact with controller 22 if the user is above a minimum height. In another example, controller 22 may allow access to only some of the control features if a use is below the minimum height. According to certain embodiments, motion sensor 64 may allow homeowners to restrict a child's access to controller 22. Further, in certain embodiments where controller 22 may be controlled by an external device such as a cell phone or a remote, motion sensor 64 may ensure that an unauthorized user is not attempting to change settings with the external device.

FIG. 53 depicts a screen 612 that may be employed to override a current temperature set point. For example, a user may select graphical element 284 from screen 279 as shown in FIG. 19 to display screen 612. The temperature override feature may allow a user to specify a temperature set point, regardless of the current heating or cooling mode, and controller 22 may then switch to the appropriate mode for cooling or heating the residence to the specified set point. In this manner, a user may not need to set separate heating and cooling temperature set points as described above with respect to FIG. 13.

Screen 612 includes indicator 98 that displays the current temperature and also includes slide bar 614 that represents a range of incremental temperature set points that may be adjusted by a user. Indicators 616 and 618 display the maximum and minimum temperature set points. In certain embodiments, the maximum and minimum humidity set points may be set by the factory or by an installer based on performance capabilities the particular equipment installed in the HVAC system. Further, in certain embodiments, controller 22 may determine the maximum and minimum temperature set points based on factors such as the equipment models included within HVAC system 52, the operating efficiency of HVAC system 52, the operating mode, and installer and/or factory settings. In certain embodiments, tables and/or algorithms correlating HVAC conditions to maximum and minimum temperature set points may be stored within memory 84 (FIG. 5). Further, in certain embodiments, the maximum and minimum temperature set points may be received through a communication interface 92 and/or through I/O port 90, as shown in FIG. 5.

Slide bar 614 includes a slider 620 that may be moved along slide bar 614 to adjust the temperature set point. Slider 620 may include an indicator 622 that displays the current temperature set point. A user may touch and drag slider 620 along slide bar 614 until the desired set point is selected. In addition to slider 620, a user may select graphical elements 624 and 626 to increase or decrease the temperature setting. In response to selection of graphical element 624 or 626, slider 620 may move accordingly to reflect the adjusted temperature setting. As slider 620 is moved, either through dragging slider 620 or selection of graphical elements 624 and 626, indicator 622 may be updated to correspond to the new temperature set point.

Upon receiving a new temperature set point, controller 22 may compare the new set point to the current temperature to determine whether a heating mode or a cooling mode should be enabled. For example, if the new temperature set point is higher than the current temperature, controller 22 may enable or increase heating. In another example, if the new temperature set point is lower than the current temperature, controller 22 may enable or increase cooling.

Screen 612 also includes graphical elements 628 and 630 that may be selected to enable rapid cooling or rapid heating, respectively. For example, after coming in from outdoors in the winter, a user may select graphical element 630 to increase the heat until a user warms up. When one of the graphical elements 628 or 630 is selected, controller 22 may operate HVAC system 52 at full capacity regardless of the current temperature set points. In certain embodiments, controller 22 may operate HVAC system 52 in rapid heating or cooling mode for a predetermined period of time, such as 10, 30 or 60 minutes, among others. The predetermined period may be set by an installer or at the factory or may be set by a user and stored within memory 84 (FIG. 5). Further, in certain embodiments, screen 612 may include another graphical element (not shown) that may be selected to cancel the rapid heating or cooling.

In general, the user interface components depicted in FIGS. 6-53 may facilitate user control of HVAC system 52 through controller 22. As may be appreciated, the relative sizes, shapes, colors, layouts, and configurations of the user interface components, graphical elements, screens, windows, menus, and the like, shown herein may vary depending on system functionality, user preferences, and/or system equipment, among others.

While only certain features and embodiments of the invention have been illustrated and described, many modifications and changes may occur to those skilled in the art (e.g., variations in sizes, dimensions, structures, shapes and proportions of the various elements, values of parameters (e.g., temperatures, pressures, etc.), mounting arrangements, use of materials, colors, orientations, etc.) without materially departing from the novel teachings and advantages of the subject matter recited in the claims. The order or sequence of any process or method steps may be varied or re-sequenced according to alternative embodiments. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the invention. Furthermore, in an effort to provide a concise description of the exemplary embodiments, all features of an actual implementation may not have been described (i.e., those unrelated to the presently contemplated best mode of carrying out the invention, or those unrelated to enabling the claimed invention). It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation specific decisions may be made. Such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking of design, fabrication, and manufacture for those of ordinary skill having the benefit of this disclosure, without undue experimentation. 

1. A control device comprising: a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system; a display capable of displaying a graphical element defining a range of temperature set points for the heating, ventilating, air conditioning, or cooling system, and a moveable feature disposed on the graphical element; a graphical user interface capable of receiving a user input that moves the moveable feature on the graphical element to select a temperature set point from the range of temperature set points; and a processor capable of operating the heating, ventilating, air conditioning, or cooling system based on the selected temperature set point.
 2. The control device of claim 1, wherein the graphical element comprises a slide bar, and wherein the moveable feature comprises a slider.
 3. The control device of claim 1, wherein the display comprises a touch screen for sensing the user input.
 4. The control device of claim 1, wherein the graphical user interface comprises a screen for selecting a zone controlled by the control device and wherein the processor is capable of applying the selected temperature set point to the selected zone independent of other zones controlled by the control device.
 5. The control device of claim 1, wherein the graphical user interface comprises a screen for selecting a schedule event controlled by the control device, and wherein the processor is capable of applying the selected temperature set point to the selected schedule event independent of other schedule events controlled by the control device.
 6. A control device comprising: a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system; a display capable of displaying a slide bar defining a range of temperature set points for the heating, ventilating, air conditioning, or cooling system, a first moveable feature disposed on the slide bar for selecting a cooling mode temperature set point, and a second moveable feature disposed on the slide bar for selecting a heating mode temperature set point; a graphical user interface capable of receiving a first user input that moves the first moveable feature on the slide bar to select the cooling mode temperature set point and a second user input that moves the second moveable feature on the slide bar to select the heating mode temperature set point; and a processor capable of applying the selected heating mode temperature set point and the selected cooling mode temperature set point to the heating, ventilating, air conditioning, or cooling system.
 7. The control device of claim 6, wherein the graphical user interface comprises a screen for selecting a zone controlled by the control device and wherein the processor is capable of applying the selected temperature set points to the selected zone independent of other zones controlled by the control device.
 8. The control device of claim 6, wherein the graphical user interface comprises a screen for selecting a schedule event controlled by the control device, and wherein the processor is capable of applying the selected temperature set points to the selected schedule event independent of other schedule events controlled by the control device.
 9. A control device comprising: a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system; a display capable of displaying a calendar with graphical elements for assigning an operating schedule to a period shown on the calendar; a graphical user interface capable of receiving a user input that selects one or more of the graphical elements to assign the operating schedule to the period shown on the calendar; and a processor capable of operating the heating, ventilating, air conditioning or cooling system in accordance with the operating schedule during the assigned period.
 10. The control device of claim 9, wherein the display comprises a touch screen for sensing the user input.
 11. The control device of claim 9, wherein the graphical elements comprise a first graphical element defining the beginning of the time period and a second graphical element defining the end of the period, and wherein the user input comprises dragging the first graphical element and the second graphical element to dates shown on the calendar.
 12. The control device of claim 9, wherein the graphical elements represent years, seasons, days, or months, or a combination thereof.
 13. The control device of claim 9, wherein the graphical user interface is capable of receiving another user input that defines the operating schedule for the heating, ventilating, air conditioning, or cooling system.
 14. The control device of claim 9, wherein the graphical user interface is capable of receiving another user input that selects the operating schedule from a plurality of displayed operating schedules.
 15. The control device of claim 9, wherein the communication interface is capable of receiving a text message that assigns the operating schedule to the period shown on the calendar.
 16. A control device comprising: a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system; a display with a backlight and capable of displaying user selectable graphical elements for assigning a schedule that adjusts an intensity of the backlight for a set period; a graphical user interface capable of receiving a user input that selects the set period via the selectable graphical elements; and a processor capable of operating the backlight at the adjusted intensity for the set period and capable of operating the heating, ventilating, air conditioning, or cooling system through the communication interface.
 17. The control device of claim 16, wherein the display comprises a touch screen for sensing the user input.
 18. The control device of claim 16, wherein the graphical user interface comprises a virtual slide bar for selecting the reduced intensity.
 19. The control device of claim 18, wherein the display is capable of displaying a slide bar defining a range of intensity settings and capable of displaying a movable feature disposed on the slide bar, and wherein the graphical user interface is capable of receiving another user input that moves the moveable feature along the slide bar to select the reduced intensity.
 20. The control device of claim 16, wherein the graphical user interface comprises another selectable graphical element for selectively enabling the schedule.
 21. A method, comprising: receiving an adjusted set point for a heating, ventilating, air conditioning, or cooling system; determining whether the adjusted set point exceeds an over adjustment threshold; operating the heating, ventilating, air conditioning, or cooling system based on the adjusted set point in response to determining that the adjusted set point does not exceed the over adjustment threshold.
 22. The method of claim 21, wherein determining whether the adjusted set point exceeds an over adjustment threshold comprises determining the difference between the adjusted set point and a current set point.
 23. The method of claim 21, wherein determining whether the adjusted set point exceeds an over adjustment threshold comprises determining a set point adjustment frequency.
 24. The method of claim 21, wherein the adjusted set point comprises a temperature set point or a humidity set point.
 25. A control device comprising: a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system; a graphical user interface comprising user selectable graphical elements for producing a virtual representation of a physical environment conditioned by the heating, ventilating, air conditioning, or cooling system; and a display capable of displaying the virtual representation.
 26. The control device of claim 25, wherein the graphical user interface is capable of receiving a user input adjusting zones of the physical environment through the virtual representation and comprising a processor capable of operating the heating, ventilating, air conditioning, or cooling system based on the adjusted zones.
 27. A control device comprising: a communication interface suitable for operable connection to a heating, ventilating, air conditioning, or cooling system; a graphical user interface comprising a user selectable graphical element for enabling a rapid heating and/or rapid cooling mode; and a processor capable of overriding a current temperature setting to operate the heating, ventilating, air conditioning, or cooling system at a maximum capacity in response to selection of the user selectable graphical element. 